Software programs and systems are often quite complex. They may be developed over a long period of time, by numerous developers. Changes to complex systems involve a risk factor, in that there is an increased risk of introducing problems with portions of systems that are complex. It is useful to understand the areas of risk within a software system, and the degree of risk of different areas. Various tools exist that extract or determine metrics associated with areas of a software system. The metrics may be indicative of complexity or other aspects of an area of the code. Developers can use the metrics to make decisions regarding which areas of the system should be revised or replaced, and priorities for such work. With numerous metrics available, tools that assist developers or managers in understanding the complexities and risks associated with various portions of a software system are useful when maintaining systems or developing new systems based on prior systems.